/* 后端返回的中文名称枚举 统一维护在此文件 */ 

import { t } from '@src/locales'

// 工单创建方式枚举
export const TaskCreateMethodLabelEnum: object =  {
  '手动创建': t('common.task.createMethod[0]'),
  '导入创建': t('common.task.createMethod[1]'),
  '计划任务创建': t('common.task.createMethod[2]'),
  '由事件创建': t('common.task.createMethod[3]'),
  '开放API': t('common.task.createMethod[4]'),
}

// 事件创建方式名称枚举
export const EventCreateMethodLabelEnum: object =  {
  '手动创建': t('common.event.createMethod[0]'),
  '客户自助': t('common.event.createMethod[1]'),
  '开放API': t('common.event.createMethod[2]'),
  '导入创建': t('common.event.createMethod[3]'),
}

// 工单异常状态名称枚举
export const TaskExceptionStateLabelEnum: object = {
  '转派': t('common.task.exceptionStatus.allot'),
  '曾转派': t('common.task.exceptionStatus.onceAllot'),
  '回退': t('common.task.exceptionStatus.rollback'),
  '曾回退': t('common.task.exceptionStatus.onceRollback'),
  '暂停': t('common.task.exceptionStatus.pause'),
  '曾暂停': t('common.task.exceptionStatus.oncePaused'),
  '超时': t('common.task.exceptionStatus.overTime'),
  '曾超时': t('common.task.exceptionStatus.onceOverTime'),
  '拒绝': t('common.task.exceptionStatus.refused'),
  '曾拒绝': t('common.task.exceptionStatus.onceRefused'),
  '取消': t('common.task.exceptionStatus.offed'),
  '位置异常': t('common.task.exceptionStatus.positionException'),
  '质检异常': t('common.task.qualityTestingStatus.abnormal'),
}

// 审批action名称枚举
export const ApproveActionLabelEnum: object = {
  '新建': t('common.event.actionStatus.createInner'),
  '提交': t('common.event.actionStatus.createSelfHelp'),
  '分配': t('common.event.actionStatus.allot'),
  '开始': t('common.event.actionStatus.start'),
  '完成': t('common.event.actionStatus.finish'),
  '评价': t('common.event.actionStatus.evaluate'),
  '转派': t('common.event.actionStatus.redeploy'),
  '修改': t('common.event.actionStatus.update'),
  '取消': t('common.event.actionStatus.off'),
  '转为工单': t('common.event.actionStatus.convert2Task'),
  '手动分配': t('common.event.actionStatus.manualDispatch'),
  '自动分配': t('common.event.actionStatus.autoDispatch'),
  '修改协同人': t('common.event.actionStatus.updateSynergy'),
  '暂停': t('common.event.actionStatus.pause'),
  '继续': t('common.event.actionStatus.unpause'),
  '质保审批': t('common.event.actionStatus.qualityApprove'),
  '指派': t('common.event.actionStatus.dispatch'),
  '结算': t('common.event.actionStatus.balance'),
  '回访': t('common.event.actionStatus.review'),
  '关闭': t('common.event.actionStatus.close'),
  '发布': t('common.event.actionStatus.publish'),
  '编辑': t('common.event.actionStatus.edit'),
}

// 工单审批人名称枚举
export const TaskApproversLabelEnum: object = {
  '发起人主管': t('common.task.approversList[0]'),
  '指定人员': t('common.task.approversList[1]'),
  '工单创建人': t('common.task.approversList[2]'),
  '客户负责人': t('common.task.approversList[3]'),
  '由发起人选择': t('common.task.approversList[4]'),
  '工单派单人': t('common.task.approversList[5]'),
  '未找到审核人员': t('common.task.approversList[6]'),
  '自动审批': t('common.base.autoApproveIt'),
}

// 事件审批人名称枚举
export const EventApproversLabelEnum: object = {
  '发起人主管': t('common.event.approversList[0]'),
  '指定人员': t('common.event.approversList[1]'),
  '事件创建人': t('common.event.approversList[2]'),
  '客户负责人': t('common.event.approversList[3]'),
  '由发起人选择': t('common.event.approversList[4]'),
  '未找到审核人员': t('common.event.approversList[5]'),
  '自动审批': t('common.base.autoApproveIt'),
}

// 附加组件标题名称枚举
export const CardNameLabelEnum: object = {
  '发货记录': t('common.task.cardName[0]'),
  '退货登记': t('common.task.cardName[1]'),
  '产品故障记录': t('common.task.cardName[2]'),
  '质检登记': t('common.task.cardName[3]'),
  '设备信息记录': t('common.task.cardName[4]'),
  '配置信息': t('common.task.cardName[5]'),
  '质量投诉': t('common.task.cardName[6]'),
  '费用备注': t('common.task.cardName[7]'),
  '礼品邮寄': t('common.task.cardName[8]'),
  '市场活动': t('common.task.cardName[9]'),
  '访问调查': t('common.task.cardName[10]'),
  '工时记录': t('common.task.cardName[11]'),
  '备件清单': t('common.task.cardName[12]'),
  '服务清单': t('common.task.cardName[13]'),
  '物料申领': t('common.task.cardName[14]')
}

// 支付方式名称枚举
export const PaymentMethodLabelEnum: object = {
  '在线支付-支付宝': t('task.detail.components.onlinePayByAli'),
  '在线支付': t('task.detail.components.onlinePay'),
  '支付宝收款码': t('task.detail.components.aliPayCode'),
  '微信收款码': t('task.detail.components.weChatCode'),
  '银行卡收款': t('task.detail.components.bankCardCollection'),
  '其他支付-统一收款': t('task.detail.components.otherPayUnifiedCollection'),
  '其他支付-月结': t('task.detail.components.otherPayMonthCollection'),
  '其他支付-周结': t('task.detail.components.otherPayWeekCollection'),
}

// 系统预置角色名称枚举
export const RoleNameLabelEnum: any = {
  '系统管理员': t('common.auth.roleNameList[0]'),
  '普通管理员': t('common.auth.roleNameList[1]'),
  '服务工程师': t('common.auth.roleNameList[2]'),
  '回访客服': t('common.auth.roleNameList[3]'),
  '服务总监': t('common.auth.roleNameList[4]'),
  '财务结算员': t('common.auth.roleNameList[5]'),
  '备件库管理员': t('common.auth.roleNameList[6]'),
  '服务台管理员': t('common.auth.roleNameList[7]'),
  '团队管理员': t('common.auth.roleNameList[8]'),
  '服务台客服': t('common.auth.roleNameList[9]'),
  '采购人员': t('common.auth.roleNameList[10]'),
  '公司高管': t('common.auth.roleNameList[11]'),
  '销售人员': t('common.auth.roleNameList[12]'),
  '质量专员': t('common.auth.roleNameList[13]'),
  '产品研发': t('common.auth.roleNameList[14]'),
}

// 异常节点工单范围名称枚举
export const TaskExceptionRangeLabelEnum: object = {
  '未完成的工单': t('common.task.taskExceptionRangeName[0]'),
  '已完成的工单': t('common.task.taskExceptionRangeName[1]'),
  '已取消的工单': t('common.task.taskExceptionRangeName[2]'),
  '已关闭的工单': t('common.task.taskExceptionRangeName[3]')
}

// 用户工作状态名称枚举
export const UserWorkStateLabelEnum: object = {
  '工作中': t('common.userData.userStateType[0]'),
  '非常忙碌': t('common.userData.userStateType[1]'),
  '休假中': t('common.userData.userStateType[2]'),
  '加班中': t('common.userData.userStateType[3]'),
  '会议中': t('common.userData.userStateType[4]')
}

// 物料出库状态名称枚举
export const MaterialOutStockStateLabelEnum: object = {
  '待审批': t('common.task.materialOutStockState[0]'),
  '待二级审批': t('common.task.materialOutStockState[1]'),
  '已拒绝': t('common.task.materialOutStockState[2]'),
  '待拣货': t('common.task.materialOutStockState[3]'),
  '待发货': t('common.task.materialOutStockState[4]'),
  '待收货': t('common.task.materialOutStockState[5]'),
  '已取消': t('common.task.materialOutStockState[6]'),
  '已出库': t('common.task.materialOutStockState[7]')
}

// 物料去向名称枚举
export const MaterialDestinationLabelEnum: object = {
  '申领出库': t('common.task.materialDestination[0]'),
  '工单出库': t('common.task.materialDestination[1]')
}

// 物料缺货状态名称枚举
export const MaterialLackStockStateLabelEnum: object = {
  '未办理': t('common.task.materialLackStockState[0]'),
  '已办理': t('common.task.materialLackStockState[1]'),
  '已取消': t('common.task.materialLackStockState[2]'),
  '发起调拨': t('common.task.materialLackStockState[3]'),
  '发起订购': t('common.task.materialLackStockState[4]'),
  '发起调拨申请': t('common.task.materialLackStockState[5]')
}

// 仓位名称枚举
export const WarehousePositionLabelEnum: object = {
  '好件仓': t('common.task.warehousePositionName[0]'),
  '坏件仓': t('common.task.warehousePositionName[1]'),
  '检测仓': t('common.task.warehousePositionName[2]'),
  '维修仓': t('common.task.warehousePositionName[3]'),
}

// 服务记录类型
export const ServiceRecordTypeLabelEnum: object = {
  '工单销售': t('servicePrice.record.taskSale'),
  '工单退回': t('servicePrice.record.taskBack')
}

// 消息来源 （目前只知道这四种，后面有新的再加进来）
export const MessageSourceLabelEnum: object = {
  '服务台': t('common.menu.serviceDesk'),
  '工单': t('common.base.task'),
  '客户': t('common.base.customer'),
  '产品': t('common.base.product')
}

export const WarrantyServiceItemLabelEnum: object = {
  '系统项目': t('common.base.systemProject'),
  '【系统项目】': t('common.base.systemProject1'),
  '维保服务': t('common.base.maintenanceService'),
  '延保服务': t('common.base.extendedWarrantyService')
}

export default {
  TaskCreateMethodLabelEnum,
  EventCreateMethodLabelEnum,
  TaskExceptionStateLabelEnum,
  ApproveActionLabelEnum,
  TaskApproversLabelEnum,
  EventApproversLabelEnum,
  CardNameLabelEnum,
  PaymentMethodLabelEnum,
  RoleNameLabelEnum,
  TaskExceptionRangeLabelEnum,
  UserWorkStateLabelEnum,
  MaterialOutStockStateLabelEnum,
  MaterialDestinationLabelEnum,
  MaterialLackStockStateLabelEnum,
  WarehousePositionLabelEnum,
  ServiceRecordTypeLabelEnum,
  MessageSourceLabelEnum,
  WarrantyServiceItemLabelEnum,
}